package demo.using.file;

import java.io.*;
import java.net.URISyntaxException;

/**
 * @author : GuoFei
 * @date : 2019/2/26 11:37
 */
public class FileTest {

    public static void main(String[] args) throws IOException, URISyntaxException {

        // 创建文件
        File file,fileRes;
        // 根据路径创建文件
        file = new File("C:/Users/mayn/Desktop/1267445843_4720892936_预习 - 副本.jpg");
        fileRes = File.createTempFile("test", "img.jpg");
        InputStream is = new FileInputStream(file);
        FileOutputStream os = new FileOutputStream(fileRes);
        BufferedOutputStream bos = new BufferedOutputStream(os);
//        String url = "https://resource.oss.yatiku.com/img/material/test.jpg";
//        HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
//        is = connection.getInputStream();
        int len ;
        byte[] b = new byte[1024];
        while ((len = is.read(b)) != -1) {
            bos.write(b, 0,len);
        }
        bos.flush();
        bos.close();
        os.close();

        // 相对路径 console：..\timg.jpg
        System.out.println(file.getPath());
        // 大小 console：9828 (B)
        System.out.println(file.length());
        // 是否存在 console：true
        System.out.println(file.exists());
        // 文件名 console：timg.jpg
        System.out.println(file.getName());
        // 路径 console：C:\Users\mayn\Desktop\timg.jpg
        System.out.println(file.getCanonicalPath());
        // 在linux上有效：测试应用程序是否可以执行此抽象路径名表示的文件。 console：true
        System.out.println(file.canExecute());
        // 可读 console：true
        System.out.println(file.canRead());
        // 可写 console：true
        System.out.println(file.canWrite());
        // 全路径 console：C:\Users\mayn\Desktop\timg.jpg
        System.out.println(file.getAbsolutePath());
        // 此抽象路径名的分区的大小 console: 106526785536 (b)
        System.out.println(file.getTotalSpace());
        // 此抽象路径名的分区的可用大小 console: 24300486656 (b)
        System.out.println(file.getUsableSpace());


    }

}
